1832C - Contrast Value - CodeForces Solution


greedy math

Please click on ads to support us..

C++ Code:

#include <bits/stdc++.h>
using namespace std;
#define ll long long
int tt, tc;

void solve() {
    int n;
    cin >> n;
    vector<ll> a(n);
    for (auto& u : a) cin >> u;

    
    a.erase(unique(a.begin(), a.end()), a.end());
    n = a.size();
    if (n == 1) return void(cout << 1 << "\n");

    vector<ll> diff(n - 1);
    for (int i = 0; i < n - 1; i++) diff[i] = (a[i] > a[i + 1]);

    diff.erase(unique(diff.begin(), diff.end()), diff.end());
    cout << 1 + (int)diff.size() << "\n";
}

int main() {
    ios::sync_with_stdio(0); cin.tie(0);
    tt = 1, tc = 1; cin >> tt;
    while (tt--) solve(), tc++;
}


Comments

Submit
0 Comments
More Questions

1359A - Berland Poker
459A - Pashmak and Garden
1327B - Princesses and Princes
1450F - The Struggling Contestant
1399B - Gifts Fixing
1138A - Sushi for Two
982C - Cut 'em all
931A - Friends Meeting
1594A - Consecutive Sum Riddle
1466A - Bovine Dilemma
454A - Little Pony and Crystal Mine
2A - Winner
1622B - Berland Music
1139B - Chocolates
1371A - Magical Sticks
1253A - Single Push
706B - Interesting drink
1265A - Beautiful String
214A - System of Equations
287A - IQ Test
1108A - Two distinct points
1064A - Make a triangle
1245C - Constanze's Machine
1005A - Tanya and Stairways
1663F - In Every Generation
1108B - Divisors of Two Integers
1175A - From Hero to Zero
1141A - Game 23
1401B - Ternary Sequence
598A - Tricky Sum